package org.ohuyo.libra.base.message.service;

import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebParam.Mode;
import javax.jws.WebResult;
import javax.jws.WebService;

import org.ohuyo.libra.base.message.impl.AppValidateReq;
import org.ohuyo.libra.base.message.impl.AppValidateResp;
import org.ohuyo.libra.base.message.impl.GetAttributeReq;
import org.ohuyo.libra.base.message.impl.GetAttributeResp;
import org.ohuyo.libra.base.message.impl.SetAttributeReq;
import org.ohuyo.libra.base.message.impl.SetAttributeResp;

/**
 * �Կͻ����ṩ���ķ���
 * 
 * @author rabbit
 * 
 */
@WebService
public interface ClientMessageService {

	/**
	 * ��֤Ӧ��Ʊ��
	 * 
	 * @param req
	 * @return
	 */
	@WebMethod
	@WebResult(name = "respone")
	AppValidateResp validateApp(
			@WebParam(name = "request", mode = Mode.IN) AppValidateReq req);

	/**
	 * ����attribute
	 * 
	 * @param req
	 * @return
	 */
	@WebMethod
	@WebResult(name = "respone")
	SetAttributeResp setAttribute(
			@WebParam(name = "request", mode = Mode.IN) SetAttributeReq req);

	/**
	 * ��ȡattribute
	 * 
	 * @param req
	 * @return
	 */
	@WebMethod
	@WebResult(name = "respone")
	GetAttributeResp getAttribute(
			@WebParam(name = "request", mode = Mode.IN) GetAttributeReq req);

}
